This invention relates to interpolating data, and more particularly, to two dimensional linear interpolation with a slope output for a hyperacuity printer.
One dimensional interpolation is the process of determining a discrete function's intensity or amplitude at some intermediate point between two given points. By fitting lines or curves, such as splines or polynomials, to the given points, the intermediate values can be found. The simplest method to obtain intermediate values is by fitting a straight line between the magnitude vector of each adjacent intensity value, then estimating the intermediate values as they fall along that line. This is referred to as piecewise linear interpolation.
Piecewise linear interpolation may be extended into two dimensions by finding the intensity for a given point within the boundaries of a rectangle by knowing the intensities at the four corners of that rectangle. The only information given by such an interpolator is the magnitude of the interpolated point. However, it may be useful to have more information about the interpolated point, for instance, the local slope, or rate of change, of the interpolated point given in two dimensions. Therefore, it would be advantageous to have a two dimensional linear interpolator which also supplies slope information for each interpolated value. As will be seen, the combination of an interpolated value with its associated slope information can be used by several image processing functions in a hyperacuity printing system.